The present invention relates to biometric identification and/or authentication systems. These systems manipulate biometric data, consisting, for example of fingerprint coding data. Naturally, they may also represent other types of biometric measurements, for example on the eye, the hand, the face, the voice, etc.
More specifically the invention relates to relatively large-scale systems, in which many fingerprint records or other biometric data are stored in databases. These systems have to process matching requests accompanied by coded data representing a fingerprint, and determine, from among the numerous stored fingerprint records, the one or those that display the closest match.
The system must also be able to process update requests to insert or delete fingerprint records stored in the databases.
Distributed architectures are known to be adopted in these large systems, with a number of matching units among which the matching request processing load is distributed. Each matching unit operates with one part of the database. Several matching units form a string covering the whole of the database. Several strings of this type may be provided for processing several matching requests in parallel. For each part of the database, one data unit ensures the updating of the stored data according to the insertion and deletion requests submitted by the users.
Coordinating the processing of the different requests is a relatively delicate matter for ensuring the general consistency of the system. Many requests of various kinds succeed one another and the system must be capable of remaining stable and reliably answering each of these requests.
Achieving this objective normally requires considerable software development as part of a proprietary solution for the system.
One object of the present invention is to simplify this development in order to ensure good system performance and some flexibility in upgrading.